package com.koicarp.agent.example.aiservices2.output;

import dev.langchain4j.data.message.ImageContent;
import dev.langchain4j.service.MemoryId;
import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.service.UserMessage;

/**
 * @Author: liuxia
 * @CreateTime: 2025/9/22 上午11:25
 * @Description: 聊天接口
 */
public interface Assistant2 {
	
	/**
	 * boolean值聊天接口
	 * @param userMessage
	 * @return
	 */
	boolean chatBoolean(@UserMessage String userMessage);

	/**
	 * 枚举值聊天接口
	 * @param userMessage
	 * @return
	 */
	AnimalEnum chatEnum(@UserMessage String userMessage);
	
	/**
	 * 实体类聊天接口
	 * @param userMessage
	 * @return
	 */
	TrainTicket chatPojo(@UserMessage String userMessage);
	
	@SystemMessage("根据用户的输入，填入下列json中，并只返回该json{\"startAddress\":\"开始出发点\",\"endAddress\":\"到达目的地\",\"startTime\":\"出发时间,格式为yyyy-MM-dd\"}")
	String chatPojoNoSupportJson(@UserMessage String userMessage);

	/**
	 * 多模态聊天
	 *
	 * @param userMessage
	 * @param imageContent
	 * @return
	 */
	String chatMultiModality(@UserMessage String userMessage, @UserMessage ImageContent imageContent);

}
